//
//  KARepaymentRecordPusher.swift
//  kano
//
//  Created by Frank on 2024/10/12.
//

import UIKit
import BRPickerView


class KARepaymentRecordPusher: KAPushView {
    
    static let var_itemCellId = "KARepaymentRecordCell"
    lazy var var_tableView: UITableView = {
        let var_tableView = UITableView()
        var_tableView.contentInset = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0)
        var_tableView.backgroundColor = .colorFFF
        var_tableView.frame = CGRect(x: 0.0, y: 0.0, width: var_screenWidth, height: var_contentView.height)
        var_tableView.register(KARepaymentRecordCell.self, forCellReuseIdentifier: Self.var_itemCellId)
        var_tableView.dataSource = self
        var_tableView.delegate = self
        var_tableView.separatorStyle = .none
        //var_tableView.separatorColor = UIColor(0xffffff, alphaVaule: 0.15)
        return var_tableView
    }()
    
    var var_dataArray: [KARepaymentRecordModel] = []
    
    init(data: [KARepaymentRecordModel]) {
        var_dataArray = data
        super.init(frame: CGRect(x: 0, y: 0, width: var_screenWidth, height: var_screenHeight))
    }
    
    required init?(coder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
    override func ka_initSubViews() {
        
        backTapEnable = false
        var_shadowView.frame = CGRectMake(0.0, bounds.size.height, bounds.size.width, kscale(500)+UIDevice.ka_safeBottom)
        var_backgroundView.effect = nil
        var_contentView.frame = var_shadowView.bounds
        var_contentView.backgroundColor = .white
        //        var_backgroundView.backgroundColor = UIColor(0x000000, alphaVaule: 0.4)
        var_titleLabel.text = "Repayment record"
        var_doneButton.isHidden = false
        var_closeButton.isHidden = true
        var_backgroundView.alpha = 0.1
        //add content
        var_contentView.addSubview(var_tableView)
        
        
        var_tableView.snp.makeConstraints { make in
            make.top.equalTo(var_contentView).offset(kscale(42))
            make.left.right.bottom.equalTo(var_contentView)
        }
        
    }
    
}

extension KARepaymentRecordPusher : UITableViewDataSource, UITableViewDelegate {
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        var_dataArray.count
    }
    
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let var_cell: KARepaymentRecordCell = KARepaymentRecordCell.ka_cell(for: tableView)
        let rowData = var_dataArray[indexPath.row]
        var_cell.var_amountLabel.text = "₦ \(rowData.businessProcessType.separatorString())"
        var_cell.var_timeLabel.text = Date.ka_stringWith(timestamp: rowData.examQuestionsSubject, format: "dd/MM/yyyy HH:mm:ss")
        if rowData.emailProvider == 0 {
            var_cell.var_statusLabel.text = "Repayment"
            var_cell.var_statusLabel.textColor = .themeColor
        } else if rowData.emailProvider == 1 {
            var_cell.var_statusLabel.text = "Success"
            var_cell.var_statusLabel.textColor = .themeColor
        } else {
            var_cell.var_statusLabel.text = "Failure"
            var_cell.var_statusLabel.textColor = .red
        }
        if rowData.repaymentAdvisory != 0 {
            var_cell.var_tipLabel.isHidden = false
            var_cell.var_tipLabel.text = "System charge"
        } else {
            var_cell.var_tipLabel.isHidden = true
        }
        return var_cell
    }
    
    func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
        return kscale(75.0)
    }
    
    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        
    }
}
